一.nodejs是什么
1.nodejs是什么:node.js 是一个基于Chrome V8引擎的Javascript运行环境。
    1》环境
    2》Javascript 是在node环境上运行的
    3》ecma
2.nodejs优势 
    1》高并发
    2》io密集:文件操作,网络操作,数据库
3.环境搭建
    测试安装:node -v , npm -v 

二.commonJs和global(模块化)
1.规范定义:
    1》每一个文件都是一个模块,都有自己的作用域
    2》在模块内部,module变量代表自身
    3》module.exports提供对外接口
2.require语法:
    1》/代表绝对路径  ./代表相对路径
    2》默认后缀:js json node 
    3》require('http')  ==>node_modules
       require('mysql')
3.global
    global.test2=999;
    console.log(test3);

三.NPM和package
1.npm包管理器
    让javascript开发者下载别人写的包
2.npm常用命令
    npm -v:查看版本
    npm init:初始化项目
    npm install xxx:下载包
    npm list:查看包
3.package.json ==>npm包信息

四.创建Node服务器
http创建服务器
    http.server是一个基于事件的http服务器,内部c++封装实现的,接口javascript实现的
    
五.get请求url数据操作
1.得到路径
    req.url
2.url模块
const url=require('url');
url.parse(reqUrl,true).query.title

六.post请求表单数据操作
1.post ==>事件接收
    req.on('data'):每次发送的数据
    req.on('end') :数据发送完成

七.Node连接mysql
1.下载mysql
    https://dev.mysql.com/downloads/mysql/
2.工具
    nacicat premium
3.node连接数据库
    1》在目录中下载mysql包:npm install mysql
    2》引入mysql
    3》配置mysql信息

八.案例-登录
mysql查询语句
    select * from 表名称:查询所有
    select * from 表名称 where
connection.query("select * from 表名称 where userName=? and userPwd=?",[第一个?,第二个?],(err,results,fields)=>{
    if(err) throw err;
    console.log(results);
    res.end();
})
connection.end();

九.案例-注册
mysal增加语句
    insert into 表名称 value()

十.express目录结构
1.express:基于node.js的web应用开发框架
2.目录结构
    bin--www     ==>启动文件【入口文件】
    app.js  ==>全局配置文件
    routers ==>路由的配置
    views   ==>页面
    public  ==>静态资源【css,img,js】

十一.案例-后台
1.设计数据库
2.封装链接库【连接数据库】
3.登录的业务逻辑